package com.shop.controller;

import com.github.pagehelper.PageInfo;
import com.shop.entity.Category;
import com.shop.entity.Product;
import com.shop.entity.Result;
import com.shop.service.ProductService;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.servlet.ModelAndView;

import javax.annotation.Resource;

/**
 * description: 该文件说明
 *
 * @author zhaoxiaozhao（xiaozhao.zhao@ucarinc.com）
 * @version 1.0
 * @date 2018/10/11 13:43
 **/
@Controller
@RequestMapping("/product")
public class ProductController {

    @Resource
    private ProductService productService;
    /**
     * description:<商品管理的界面>
     *
     * @author zhaoxiaozhao（xiaozhao.zhao@ucarinc.com）
     * @date   2018/10/9 13:40
     * @param
     * @return
     **/
    @RequestMapping("/productList")
    public String buyersList(){
        return "productList";
    }

    /**
     * description:<商品管理查找>
     *
     * @param
     * @return
     * @author zhaoxiaozhao（xiaozhao.zhao@ucarinc.com）
     * @date 2018/10/9 13:40
     **/
    @RequestMapping("/getProductList")
    @ResponseBody
    public PageInfo<Product> getCategoryList(@RequestParam(value = "page", defaultValue = "1") Integer page, @RequestParam(value = "rows", defaultValue = "2") Integer rows, Product product) {
        PageInfo<Product> pageInfo = productService.findProductList(page,rows,product);
        return pageInfo;
    }


    /**
     * description:<添加商品的页面跳转>
     *
     * @author zhaoxiaozhao（xiaozhao.zhao@ucarinc.com）
     * @date   2018/10/9 13:40
     * @param
     * @return
     **/
    @RequestMapping("/toAddProduct")
    public String toAddProduct(){
        return "addProduct";
    }

    /**
     * description:<新增商品管理>
     *
     * @author zhaoxiaozhao（xiaozhao.zhao@ucarinc.com）
     * @date   2018/10/9 13:40
     * @param
     * @return
     **/
    @RequestMapping("/doAddProduct")
    @ResponseBody
    public Result doAddProduct(Product product){
        return productService.addProduct(product);
    }
    /**
     * description:<修改商品的页面跳转>
     *
     * @author zhaoxiaozhao（xiaozhao.zhao@ucarinc.com）
     * @date   2018/10/9 13:40
     * @param
     * @return
     **/
    @RequestMapping("/toModifyProduct")
    public String toModifyProduct(){
        return "modifyProduct";
    }


    /**
     * description:<修改会商品的页面>
     *
     * @author zhaoxiaozhao（xiaozhao.zhao@ucarinc.com）
     * @date   2018/10/9 13:40
     * @param
     * @return
     **/
    @RequestMapping("/doModifyProduct")
    @ResponseBody
    public Result doModifyProduct(Product product){
        return productService.modifyProduct(product);
    }


    /**
     * description:<修改商品的页有效性>
     *
     * @author zhaoxiaozhao（xiaozhao.zhao@ucarinc.com）
     * @date   2018/10/9 13:40
     * @param
     * @return
     **/
    @RequestMapping("/doShelfOrObtainedProduct")
    @ResponseBody
    public Result doShelfOrObtainedProduct(@RequestParam(value = "productId") String productId){
        return productService.updateProductStatu(productId);
    }

}
